package com.wxmit.module.system.domain;

import java.io.Serializable;
import java.util.Date;

import com.baomidou.mybatisplus.annotation.TableField;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import com.wxmit.system.base.core.BaseEntity;
import lombok.experimental.FieldNameConstants;

/**
 * 操作日志记录对象 sys_operate_log
 * 
 * @author huangxiong
 * @date 2022-08-08
 */
@Data
@TableName("sys_operate_log")
@FieldNameConstants
public class SysOperateLog implements Serializable
{
    private static final long serialVersionUID = 1L;

    /** 日志主键 */

    @TableId(type = IdType.AUTO)
    private Long id;

    /** 模块标题 */

    private String module;

    /** 操作名称 */

    private String name;

    /** 业务类型 @link BusinessType */

    private Integer businessType;

    /** 方法名称 */

    private String method;

    /** 请求方式 */

    private String requestMethod;

    /** 操作类别（0其它 1后台用户 2手机端用户） */

    private String operatorType;

    /** 操作人员 */

    private String operUserId;

    @TableField(exist = false)
    private String nickName;

    /** 部门名称 */

    private String deptName;

    /** 请求URL */

    private String operUrl;

    /** 主机地址 */

    private String operIp;

    /** 操作地点 */

    private String operLocation;

    /** 请求参数 */

    private String operParam;

    /** 返回参数 */

    private String jsonResult;

    /** 操作状态（0正常 1异常） */

    private Integer status;

    /** 错误消息 */

    private String errorMsg;

    /** 操作时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    private Date operTime;

    /**
     *  消耗时间 （毫秒）
     */
    private Long consumeTime;

}
